package itsm.isperp.framework.web.request;

import java.io.Serializable;

/**
 * JqGrid过滤规则{@link JqGridFilterRule}的查询条件枚举
 * 
 * op：表示条件（eq=等于，ne=不等，lt=小于，le=小于等于，gt=大于，ge=大于等于，bw=开始于，bn=不开始于，in=在，ni=不在内，
 * ew=结束于，en=不结束于，cn=包含，nc=不包含）。
 * 
 * @author lizx
 * @date 2013-1-24
 * @version V1.0
 */
public enum JqGridFilterRuleOp implements Serializable {

	/**
	 * 等于
	 */
	eq("='%s'"),

	/**
	 * IS NULL
	 */
	isnull(" IS NULL "),
	
	/**
	 * IS NULL
	 */
	isnotnull(" IS NOT NULL "),

	/**
	 * 不等
	 */
	ne("<>'%s'"),

	/**
	 * 小于
	 */
	lt("<'%s'"),

	/**
	 * 小于等于
	 */
	le("<='%s'"),

	/**
	 * 大于
	 */
	gt(">'%s'"),
	/**
	 * 大于等于
	 */
	ge(">='%s'"),

	/**
	 * 开始于LIKE %s%%
	 */
	bw("LIKE '%s%%'"),
	/**
	 * 不开始于NOT LIKE %s%%
	 */
	bn("NOT LIKE '%s%%'"),
	/**
	 * 在之内
	 */
	in("IN ( %s)"),

	/**
	 * 不在内
	 */
	ni("NOT IN ( %s)"),
	/**
	 * 结束于LIKE %%s
	 */
	ew("LIKE '%%%s'"),
	/**
	 * 不结束于NOT LIKE %%%s
	 */
	en("NOT LIKE '%%%s%%'"),
	/**
	 * 包含
	 */
	cn("LIKE '%%%s%%'"),
	/**
	 * 包含 
	 */
	kcn("LIKE 'KEY%%%s%%'"),
	/**
	 * 包含
	 */
	cnx(""),
	/**
	 * 不包含
	 */
	nc("NOT LIKE '%%%s%%'");

	private String value;

	private JqGridFilterRuleOp(String value) {
		this.value = value;
	}

	public String toString() {
		return value;
	}
}
